package com.ruoyi.admin.mapper;

import java.util.List;
import com.ruoyi.admin.domain.Semester;

/**
 * 学期管理Mapper接口
 * 
 * @author lin
 * @date 2024-04-20
 */
public interface SemesterMapper 
{
    /**
     * 查询学期管理
     * 
     * @param semesterId 学期管理主键
     * @return 学期管理
     */
    public Semester selectSemesterBySemesterId(Long semesterId);

    /**
     * 查询学期管理列表
     * 
     * @param semester 学期管理
     * @return 学期管理集合
     */
    public List<Semester> selectSemesterList(Semester semester);

    /**
     * 新增学期管理
     * 
     * @param semester 学期管理
     * @return 结果
     */
    public int insertSemester(Semester semester);

    /**
     * 修改学期管理
     * 
     * @param semester 学期管理
     * @return 结果
     */
    public int updateSemester(Semester semester);

    /**
     * 删除学期管理
     * 
     * @param semesterId 学期管理主键
     * @return 结果
     */
    public int deleteSemesterBySemesterId(Long semesterId);

    /**
     * 批量删除学期管理
     * 
     * @param semesterIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSemesterBySemesterIds(Long[] semesterIds);


    boolean setIsNow(Long semesterId);

    void updateAllSemestersToNotNow();

    Semester selectCurrentSemester();
}
